#include <iostream>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <unistd.h>
#include <fstream>
#include <string>
#include <stdio.h>
#include <cstring>

using namespace std;

int main()
{
    const char *file = "./a.out";

    // access：测试指定文件是否具有某种属性
    // F_OK：测试文件是否存在
    int flag = access(file, F_OK);
    if (flag == 0)
    {
        cout << "文件存在" << endl;
    }
    else
    {
        cout << "文件不存在" << endl;
    }

    // X_OK：是否有执行权限
    flag = access(file, X_OK);
    if (flag == 0)
    {
        cout << "文件具备执行权限" << endl;
    }
    else
    {
        cout << "文件不具备执行权限" << endl;
    }

    return 0;
}